package main

import (
	"fmt"
	"os"
	"path/filepath"
)

func main() {
	tempPath := os.TempDir()
	fmt.Println("系统的临时文件夹:", tempPath)

	fileName := "test.txt"
	var paths []string
	dir, _ := os.Getwd()
	dirPath := filepath.Join(dir, fileName)  // 在当前文件夹下创建一个文件
	paths = append(paths, dirPath)
	notExistsPath := filepath.Join(dir[:len(dir)-1], fileName)  // 这个文件夹路径应该不存在
	paths = append(paths, notExistsPath)

	for _, path := range paths {
		fmt.Println("创建文件:", path)
		_, err := os.Create(path)  // 返回的第一个参数是*File，就不要的
		if err != nil {
			var underlyingErr string
			if _, ok := err.(*os.PathError); ok {
				underlyingErr = "(path error)"
			}
			fmt.Fprintf(os.Stderr, "ERROR: %v %s\n", err, underlyingErr)
			continue
		}
		fmt.Println("创建文件成功.")
	}
}
